package me.yangzhi.day_12.model;

/**
 * 聊天消息数据模型类
 * 用于表示一条聊天消息的所有属性
 * 包括消息ID、内容、发送状态和时间戳
 */
public class ChatMessage {
    // 消息的唯一标识符，对应数据库主键
    private long id;
    // 消息内容
    private String message;
    // 消息发送状态：true表示是用户发送的消息，false表示是接收的消息
    private boolean isSent;
    // 消息发送时间的时间戳（毫秒）
    private long timestamp;

    /**
     * 构造函数
     * @param id 消息ID，来自数据库的自增主键
     * @param message 消息内容
     * @param isSent 是否为发送的消息
     * @param timestamp 消息时间戳
     */
    public ChatMessage(long id, String message, boolean isSent, long timestamp) {
        this.id = id;
        this.message = message;
        this.isSent = isSent;
        this.timestamp = timestamp;
    }

    /**
     * 获取消息ID
     * @return 消息的唯一标识符
     */
    public long getId() {
        return id;
    }

    /**
     * 获取消息内容
     * @return 消息文本内容
     */
    public String getMessage() {
        return message;
    }

    /**
     * 判断消息是否为发送状态
     * @return true表示是用户发送的消息，false表示是接收的消息
     */
    public boolean isSent() {
        return isSent;
    }

    /**
     * 获取消息时间戳
     * @return 消息发送时间的时间戳（毫秒）
     */
    public long getTimestamp() {
        return timestamp;
    }
} 